過了很久發現自建的網站一直沒出現在估狗的搜尋結果,只好透過Google Search Console,並提交網站的網址,這樣一來很快的就能在搜尋引擎看到自己的網站連結了(我的話是當天就可以看到結果了)。
另外,通常一個網站裡面又有更多的連結,如果要一個一個提交,實在太浪費時間,這時候可以透過提交Sitemap的方式,一次性地把網站連結全部都讓Google做索引。Django有一個的App叫Sitemaps,可以來自動產置sitemap.xml,相當方便。
下面是實作後碰到的幾個問題及解決方法。
新增兩個APP到INSTALLED_APPS,以及新增一行SITE_ID=1。
INSTALLED_APPS = [....
'django.contrib.sites',
'django.contrib.sitemaps',]
SITE_ID = 1
(然後下面的步驟一開始漏做了><)
接著執行指令python manage.py migrate,Django會自動新增一個叫Sites的Model。
然後進到admin去,會發現Sites裡面已經有一筆資料'example.com',把它改成'appname.herokuapp.com'。
settings.py放上heroku後,heroku裡的資料庫也要做migrate才能新增sites table,輸入下面指令:
heroku run python3 manage.py migrate
#執行之前,Procfile中要記得加上這一行"Release: heroku run python3 manage.py migrate"
去確認一下資料庫裡面有沒有新增一個叫django_site的表,有的話就代表成功了。
(確認在postgresql有django_site table)